home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-12-04 | 45.2 KB | 1,057 lines |
-
-
-
-
-
- CWReader
-
-
-
-
- A program that reads CW from el-bug to your log-program
-
- version 1.0
-
-
-
-
- Made by Mikko Noromaa OH3LIM
-
-
-
-
-
-
-
-
-
-
- Reading this document is necessary for a thorough understanding of
- the operation of this program. And a thorough understanding is
- necessary to be able to use this program successfully and
- efficiently.
-
- However, prior to reading this rather long document, you might want
- to view the file READ.ME. If you want, you can print the READ.ME by
- typing "COPY READ.ME PRN" and this document by typing "COPY
- CWREADER.DOC PRN".
-
-
-
-
-
- WHAT IS CWREADER?
-
- CWReader is a program that copies morse-code from your electronic
- keyer (el-bug) to your log-program. It's mainly intended for use in
- contests, and may be used on a DX-pedition as well. CWReader can be
- configured to work with almost any kind of a program, so you'll be
- able to enter DOS-commands with your keyer, for example! If you
- send CW very fast and type with the keyboard very slowly, you may
- also find it convenient to use your keyer to 'write' text to a
- word-processing program. At last, CWReader's capabilities are
- largely dependent on your imagination!
-
- Even if you wouldn't want to connect a keyer to your computer, you
- can use CWReader as an enhancer of some contest logging-programs.
- It provides a CW-speed range of 12 to 50 WPM with all logging-
- programs that otherwise don't support such a large range. CWReader
- also allows you to define 'trapped-keys', with which you have the
- power to entirely change the actions of some keys on the keyboard.
-
-
-
-
-
-
- THE ACCOMPANYING CONFIGURATION PROGRAM, CWRCONF
-
- For reasons of space and efficiency, no configuration options are
- included in the CWReader-program itself. Instead, all configuration
- is done with a separate program, called CWRCONF. This program
- allows you to configure almost everything you could ever imagine
- you wanted to change (and more)! The options range from setting the
- ports and pins where the keyer is connected, through setting all
- the keys used to operate CWReader to redefining all the CW-
- characters.
-
- The options are divided into two classes: global options and
- contest program-specific options. Global options include settings
- that are the same, no matter what contest-program you use with
- CWReader. The keyer-connection, initialization-key and default CW-
- speed are examples of global-options.
-
- The contest program-specific options include options like the keys
- used to change the CW-speed, the trapped-key definitions and the
- sequences to issue in the initialization. The contest program-
- specific options also include the global-options, which means, that
- although the global-options are intended to be 'global', you can
- override some (or all) of them as necessary for a given logging-
- program.
-
- All the options are saved in files that have an extension of
- ".CWR". The global options reside in USERCFG.CWR and the contest
- program-specific options in their own .CWR-files, the name usually
- being the same as that of the contest-program for which they are
- intended. CWRCONF manipulates these files and CWReader loads them
- into memory upon startup.
-
- A complete list of all the options available for configuration with
- CWRCONF is given later in this document, along with a thorough
- description of the options.
-
-
-
-
-
- INSTALLING CWREADER
-
- CWReader is installed (loaded in memory) by running the program
- "CWR.COM". If you give no parameters to it, it assumes that what
- you want to load is the configuration for CT-program, found in a
- file "CT.CWR". If you give a command-line parameter to CWReader
- (for example, you type "CWR OWNPRG"), CWReader loads the
- configuration file "OWNPRG.CWR". If this file (or in the default-
- case, file CT.CWR) doesn't exist, you'll get an error-message. As
- the file USERCFG.CWR is also loaded at startup, it must also exist
- in the current directory.
-
- If you don't have these .CWR-files, you can create the default ones
- by running CWRCONF. When it detects the absence of these files, it
- creates them and places the default-values in them. If you don't
- want to change these defaults, you can quit CWRCONF immediately,
- and you'll be ready to run CWR.COM and get it installed in the
- memory.
-
-
-
- That was the first step needed to get CWReader 'up and running'.
- Now CWReader is loaded in memory, but it's not active yet. Your
- next step is to load the contest-program you are going to use and
- for which the configuration-file you loaded is intended. Once you
- have the program ready and running, you can initialize CWReader by
- pressing Alt-I (or the keys you set with CWRCONF). CWReader issues
- the initialization sequences set with CWRCONF and after it is done,
- beeps briefly to mark succesful initialization.
-
- Now CWReader is ready to use with your contest-program. When you
- press the initialization key (Alt-I by default) again, CWReader
- uninstalls itself, this time beeping a little longer to mark
- succesful uninstallation. CWReader is not, however, completely
- wiped out of computer's memory, but is, in a way, simply suspended.
- You can reinitialize it again by pressing the initialization key
- once more.
-
- When you exit the contest-program you were using, be sure to
- uninstall CWReader first! If you can exit the program using some
- key-combination (like Alt-X or Alt-Q), you'd better do so, rather
- than exit by choosing "quit" from a menu. This allows you to set an
- 'uninstall-key' with CWRCONF. When you press this uninstall-key,
- CWReader automatically uninstalls itself and then passes the key to
- the contest-program. (note these two differences when compared to
- Alt-I operation!)
-
- Should you accidentally exit your contest-program without
- uninitializing CWReader, the system will crash. Most probably even
- the contest-program won't quit like normally and when you try to
- run other programs, the computer is very likely to hang. To prevent
- loss of data and other damage, you should always boot your computer
- after this kind of an accident!
-
-
-
- By running CWR.COM again when CWReader is already installed in
- memory, you can update the options with which CWReader is working.
- For example, when you first simply type "CWR" and load the
- configuration for CT that way, you can later type "CWR OWNPRG" to
- change the configuration options for those of OWNPRG. Or, you may
- do changes to the global-options with CWRCONF and then run CWR.COM
- again to get these options in effect.
-
- There is no way to completely remove CWReader from the memory, but
- if you want to do so, use utilities such as MARK and RELEASE. There
- should be numerous of such utilities in the public domain and
- shareware-market. What you should avoid, however, is to remove
- CWReader from the memory (by RELEASE, for example) without first
- having uninstalled it. If you do so, your computer's clock will
- begin running about four times as fast as normally! When you boot
- your computer again, the time will be reset according to the
- computer's battery backed-up real-time clock.
-
-
-
-
-
- CONNECTING YOUR KEYER TO THE COMPUTER
-
- With CWRCONF, you can configure the keyer to any port (LPT1-4,
- COM1-4) and any pin of the selected port. Here, however, we make
- the assumption, that you are connecting your keyer to a LPT-port
- and to it's SLCT-pin (pin number 17 in DB25).
-
- Basically, the task is quite simple: just connect the keyer so,
- that whenever it keys your rig, it will connect the SLCT-pin to
- ground. Think about connecting a straight key to the computer: it
- would be simply connected between the SLCT-pin and the ground. The
- idea is essentially the same when connecting a keyer of any kind.
-
-
-
- Using the accompanying program CWRTEST
-
- The CWRTEST-program is intended to help you to connect your keyer
- to the computer. Follow the on-screen helps to select the port
- where your keyer is connected (use 'C' to COM, 'L' for LPT and
- numbers 1-4 to select the individual port). You'll see the current
- bit pattern of the selected port and whenever a bit's state
- changes, it's shown on the screen.
-
- Use the arrow-keys to select a bit and press ENTER to attach a
- sidetone to it. Press ENTER another time to toggle the 'polarity'
- of the sidetone (i.e. is 1 ON and 0 OFF or 0 ON and 1 OFF). If you
- hear a continuous beep when starting CWRTEST, press ENTER to change
- the polarity and stop the beep. Now, if you have connected your
- keyer correctly, you should hear your sending from the computer's
- internal speaker. Confirm that it sounds OK.
-
- When using CWReader and a log-program to send CW, the wirings
- between your computer, rig and keyer should be as follows:
-
- ╔════════════╗ ╔═════╗ ╔═════╗
- ║ COMPUTER ║ ║ RIG ║ ║KEYER║
- ║ in out ║ ║ in ║ ║ out ║
- ╚══╤══════╤══╝ ╚══╤══╝ ╚══╤══╝
- │ │ │ │
- │ └────────────┴──────┼───────┤
- │ │
- └───────────────────────────────────┘
-
- The diode (─┼─) between the keyer and rig is necessary, because
- without it, there would be a direct way from computer out to
- computer in and CWReader would copy what the log-program sent!
-
- The existence of the above problem can be checked with CWRTEST by
- pressing the SPACE. This causes CWRTEST to send a little message
- through the selected port and if you hear it from the speaker, you
- should take actions to correct the problem.
-
-
-
- LPT-interface versus COM-interface
-
- If you have the choice, use the LPT-interface. It is significantly
- the simplest and the most reliable way to connect your keyer to the
- computer. However, if you have no choice but to use a COM-port, you
- should take the following facts into consideration.
-
- First of all, the pins of a COM-port are normally in the 0-state,
- which means that they are at the same potential than the ground.
- Clearly, there is no point in connecting them to the ground through
- you keyer. The way I have succeeded in solving the problem was to
- connect the interface-pin in question to a pin, which was
- constantly held in the 1-state. The pins DTR and RTS are usable for
- this, but if CW is output through the same COM-port, these pins are
- reset to 0 by the CW-keying routine. And holding them in the 1-
- state causes the keying line to the rig being held active all the
- time!
-
- Anyway, if you configure (with CWRCONF) the keyer (or external-
- disable) to a COM-port, this port's DTR and RTS are set active by
- the initialization routine. However, they may be reset back to 0 by
- a CW-keying routine or just for some other other reason. Careful
- experimentation is needed, if you are going to connect your keyer
- to a COM-port!
-
-
-
-
-
-
- THE DEFAULT SETUP OF F2, F6, F7 AND INSERT
-
- The following paragraphs describe the default setup of the F2-, F6-
- , F7- and INSERT-key when using CWReader with CT. You may alter
- this with CWRCONF and the description as such serves as an example
- of the power of configuring CWReader. You don't need a keyer
- connected to the computer to use the information contained here.
-
- A problem with the CT program is, that when you are answering CQ's,
- the message you get from F2 is simply of form "599 123", i.e. there
- is no possibility to get a leading "TU" or "R". CWReader offers a
- cure for this. It's setup so, that when you press the F2-key, what
- is actually passed to CT is F7 followed by F2. When the message
- programmed in F7 is "TU 599" and the message in F2 is simply "#"
- (the serial-number) or your zone, the output is effectively of form
- "TU 599 123". When you normally press the INSERT-key, CT sends
- first the other station's call (F5) followed by the exchange (F2).
- CWReader changes the action of INSERT so that it passes the keys
- F5, F6 and F2 to CT. And when the message in F6 is "599", the
- result is of form "<call> 599 123".
-
- The abovementioned feature is a significant improvement to CT's
- operation, at least in author's opinion. The drawback of it is,
- however, that you effectively lose the CW-memories F6 and F7. So if
- you are used to using them (sending "?" and "CL?", for example) you
- could consider removing these trap-key settings from CT.CWR with
- CWRCONF.
-
-
-
-
-
- THE 'INTELLIGENCE' OF CWREADER
-
- This section explains how CWReader interprets some characters,
- words, spacings and combinations of them. You should know this
- information in order to send CW in the most optimum way for
- CWReader. In the discussion below, the contest-program is assumed
- to be CT. (note that all of these features can be enabled and
- disabled with CWRCONF)
-
-
-
- Receiving a 599-report:
-
- When you send a station's call with your paddle, it is copied
- to the CT's call-field. Then, after the call, you immediately
- send the report, "5NN", at which point CWReader wakes up. It
- deletes the characters "5NN" after the call from the call-
- field, moves the cursor to the number-field and commands CT
- to send the exchange-number.
-
- Sometimes you may send 599, by mistake, as "HNN". But don't
- worry, CWReader detects this as well and actually handles
- "HNN" just like it would "5NN".
-
- CWReader's 599-detection is not always active. You can, for
- example, work station VK5NN not having to worry about
- CWReader thinking the "5NN" part of the call was a report.
- The logic CWReader uses is simple: begin monitoring for 599
- after at least one number and at least one letter have been
- received. However, if the number is the first character of
- the call, begin counting from the second character. There is
- one exception: when a question mark is received, 599-
- detection is immediately enabled. This makes sending the
- following call impossible: "V?5NN", so you should probably
- use question marks only at the end of the partial call.
-
- After receiving 599, there is a little pause in copying
- characters from the keyer. This pause is there so that you
- can manually send the exchange number, if you, for example,
- prefer to use your keyer's serial-number logic instead of
- CT's. Be careful, however, when you make a mistake in sending
- the number and keep a too long pause before sending an error
- character: the whole log-line, including the call, will be
- deleted!
-
-
-
- Receiving TU:
-
- Imagine you have just finished entering the number the other
- station gave you and are ready to confirm the QSO. Provided
- you do not use the keyboard to do this, you will send
- something like "TU OH3LIM" with your paddle (or perhaps
- simply "TU", if the pileup is heavy). CWReader can detect
- both of these cases and take actions accordingly.
-
- Let's begin with the reception of a simple "TU". After
- receiving this character combination and a resonably long
- space, CWRreader deletes the TU from the log and confirms the
- QSO like you would do it with ENTER. The delay after TU is
- necessary, because otherwise calls like N2NTU would be
- seriously mistaken. For the same reason there must also be a
- resonably long space BEFORE receiving the TU or otherwise it
- will not be acted upon.
-
- If you send your own call (set with CWRCONF) after the "TU",
- CWReader doesn't even print the call on the screen: if it
- appears to be your call, the action is same as TU's alone
- (without the delay at the end, however), but if it is not,
- the call is displayed and no actions are taken. For example,
- with a call like "N2TUO" (and if your call began with an
- "O"), the last "O" would not display immediately when you
- send it, but later after the 5 of 599 has been sent. When the
- TU is followed by your call, there need not be the space
- neither in the beginning nor in the end of the sequence.
-
- TU is sometimes given without the space between T and U,
- making it effectively X. From CWReader's point of view, the
- TU can be given as X and all actions apply to it as well.
- However, it's not suggested that you make it a habit giving
- TU as X, but just in the case it happens to slip from your
- paddle...
-
-
-
- Skipping CQ-calls
-
- Although you should use CT's F1-key to send CQ-calls, it may
- sometimes be necessary to send a CQ with the paddle. When
- CWReader detects the sequence "TEST", it erases it from the
- screen and does not write anything you send afterwards on the
- screen. When CWReader detects another "TEST"-sequence, it
- resumes normal operation and write everything following the
- sequence on the screen. Be sure to end your CQ's in "TEST"
- (or as set with CWRCONF), because otherwise you'll
- effectively disable CWReader!
-
- If you make a mistake in sending the CQ and send an error-
- character (as described in a later section), CWReader's TEST-
- mode is reset. That is, all you send after the error-
- character, will be put on the screen. Note, that the error-
- character causes its normal action to be executed (normally
- the deletion of the current field)!
-
-
-
- Entering calls partially by keyboard and partially by paddle
-
- Say you are not a very fast typewriter. When a station is
- calling you, you can only enter a few characters of his call.
- Say there is EI5ISF calling you and you enter EI5 after which
- you must hurry to your paddle to send, NOT the rest of the
- call, but the full callsign, of course. CWReader starts
- putting the characters on the screen when you have got past
- the characters that are already on the screen. If you make a
- mistake, however, like sending ES5 instead of EI5, the
- mistaken character will be put on the screen where the cursor
- points! That ES5 would make it look like EI5S on the screen,
- then. In this case, the best action is probably to send an
- error-character (and get the whole call wiped out), as
- discussed in the next section.
-
- Whenever you press a key on the keyboard, CWReader resets its
- 'current callsign position'-variable, making it impossible
- for you to first enter EI5 by keyboard, then send EI from the
- paddle, then enter I (or IS or ISF) by keyboard and lastly
- send 5ISF from the paddle. That is, you should not enter more
- of the callsign AFTER you have begun sending with your
- paddle! Just let CWReader read the callsign directly from the
- paddle for you.
-
-
-
- Receiving error-characters
-
- CWReader knows three kinds of error-codes: the standard
- error-character (...-.), a bunch of dots (........) and a few
- dots sent far-spaced. The error-character and bunch of dots
- are easy ones; just make sure you send at least 6 dots, since
- 5 would result in receiving the number '5'.
-
- A minimum of three far-spaced dots is needed to interpret it
- as an error-code. There is no maximum, but when you keep a
- 'long' pause (compared to the spaces between other dots), the
- error-code is considered ended. Note that it's impossible to
- enter a call like JJ0EEE from the paddle! However, a call
- like EA1XX is possible to enter, but you must remember to
- keep a long enough pause between the last error-dit and the
- callsign's "E". Trying it out is the best way to make your
- timing correct!
-
- Remember, that when an error-character is sent, the WHOLE
- log-line is emptied. This corresponds the keyboard-entered
- Alt-F8 (can be changed with CWRCONF, though). Make sure you
- have the stations callsign firmly in your head when having to
- issue an error-character!
-
-
-
-
-
- ISSUES ABOUT CW-SPEEDS
-
- There are two CW-speeds in effect: the one of your contest-program
- and the one of your keyer. In the discussion below, we'll assume
- the contest-program to be CT. It applies, however, to every other
- contest-program as well, except that the keys used may be different
- (all of them can be changed with CWRCONF).
-
-
-
- CT's speed is changed by using the keys Alt-F9 and Alt-F10 (Alt-V
- is disabled) and keyer's speed changing is dependent on the keyer.
- CT's speeds range from 12 to 50 wpm (yes, CWReader extends it to
- this range), and your keyer may further extend it considerably
- (both below 12 wpm and above 50 wpm).
-
- You should be very careful when changing your keyer's speed. First
- of all, you should not change it too much DURING the sending of a
- character. Second, you should not change the speed to less than
- half the original speed at once. If you want to do such a large
- speed change, do it in two phases sending something between these
- two (not an E or T, however). Alternatively you can hit two times
- Alt-D after you've changed the speed to reset CWReader's speed-
- expectations. Third, you may not change CT's speed during the
- sending of a character. Especially if the change is large, CWReader
- may copy one or more characters wrongly.
-
- You can change the speed upwards as much as you like at once. But
- there is a limit of maximum copyable speed, which is a function of
- the speed set in CT! If CT's speed is at minimum (12 wpm), you
- should not try copying speeds greater than 24 wpm. However, because
- 12 wpm is such a low speed, this shouldn't be a handicap, because
- with CT's speed set to 20 wpm, you'll be able to copy speeds of 40
- wpm. And if you set CT's speed to the maximum, 50 wpm, CWReader
- will be able to copy speeds up to 100 wpm! The station trying to
- copy you may have a little trouble, though.
-
- The above statements clearly suggest that you should keep CT's
- speed and you keyer's speed 'in sync'. If you lower CT's speed,
- you'll most probably want to lower your keyer's speed as well.
- Therefore, there is no problem in practice, but it's good for you
- to know that conflicts in speeds may lead to errorneous operation
- of CWReader.
-
- After having changed the keyer speed considerably, avoid sending
- single-element characters 'E' and 'T'. As first characters, these
- may be copied incorrectly. If you begin getting T's only,
- regardless of what you send, the keyer's speed has been changed
- down too rapidly. You can either raise the speed and then bring it
- slowly down again or press two times Alt-D.
-
- If you break your keyer sending its memory by tapping the paddle
- (or by any other means), you run into a terrible risk of receiving
- one very short element (the interrupted element), which causes
- CWReader think your keyer's speed has raised dramatically. Usually
- this causes everything that follows to be copied as T's. If you
- must break like this very often, you'll sure need to learn to use
- Alt-D!
- One very important thing about CWReader is, that your contest-
- program's CW-speed should ALWAYS be kept at 22 WPM! By default,
- configuration for CT sets this upon initialization and after that
- it's impossible to change the speed. Alt-F9 and Alt-F10 are trapped
- by CWReader and Alt-V is discarded by CWReader, so there remains no
- way to change CT's speed. That's how you should configure any other
- contest-programs you may use with CWReader.
-
- The explanation for the above follows (don't worry if you don't
- understand it). When first loaded, CWReader chains itself to the
- timer-interrupt and when the contest-program (called CT from here
- on) is loaded, it adds itself to this chain. Sending CW is
- accomplished by means of the timer-interrupt, as is receiving CW by
- CWReader. Because CWReader needs much more precision for the
- receiving as CT needs for the sending, it sets the timer-interrupt
- to occur four times as often as CT requires. The portion of
- CWReader (in timer-interrupt chain before CT) then passes only one
- of four interrupts to CT so it seems to CT as the timer were
- running at the normal rate. When the CW-speed is
- increased/decreased by CWReader, the timer-interrupt's rate is
- still held high, but if CT gets to change its CW-speed, it drops
- the rate out of the four-times-as-large -value. This means that
- copying does not work anymore and that CT's CW-speed drops to
- fourth the intended!
-
-
-
-
-
-
-
- EXAMPLE WORKING CONFIGURATIONS
-
- This sections is to show you different ways in which you can
- benefit from CWReader. Of course there are numerous other ways as
- well, so feel free to adapt your own working-practice either as
- such or partially modified, to work with CWReader. Take the
- 'configurations' in this section only as examples!
-
- 'The best way' to use CWReader
-
- 'The best' here means most trouble-free and reliable
- operation with CWReader. Of course this depends largely on
- your paddle-sending skills, but with this method, the errors
- should be minimal.
-
- The key issue is to use your keyer's memories as much as
- possible. When you pick a station's call, send it from your
- paddle, then push keyer's button 2 to send the 599 (you can
- make mistakes in it too, especially after 40 hours of
- continuous operation). If the contests calls for fixed-
- numbers (like zones, power or age), you can include this
- number in keyer's message and program CWReader not to send
- anything after 599 (with CWRCONF). You should not use your
- keyer's serial-number logic, because this may create
- conflicts between the numbers you send and the numbers CT
- thinks should be sent.
-
- After the QSO is complete, you press keyer's button 3 to send
- "TU <owncall>" or button 4 to send only "TU" (in case of a
- heavy pileup). CWReader confirms the QSO for you and you are
- ready to log another.
-
- Doing it without a memory-keyer
-
- Without a keyer capable of storing to and sending from
- memories, you are not very well off, actually. Making errors
- in sending 599 or TU can be quite 'disastrous', meaning that
- you must do some work to correct your errors by the keyboard.
- But if you are skilled in sending CW, there should be no
- problems, as your sending will be much like it came from
- memories, right?
-
- In the case of a non-memory capable keyer, you should confirm
- QSO's by using CT's plus-key. This way you will minimize the
- error possibilities. If you want to send only "TU" without
- your call, you can do it with your keyer. Remember, that "X"
- is interpreted as "TU" and "HNN" as "599" and you may
- configure "...... -. -." to be received as "599" as well!
-
- Using CWReader without a keyer
-
- Yes, this is possible also. There is, however, not very much
- you can do with CWReader without a keyer. The only thing is
- the enhanced action of F2 (sending "TU 599 123" instead of
- "599 123"), so if you consider this a worthwhile enhancement,
- go ahead and install CWReader. Remember, however, that F6-
- and F7-memories can't be used for your purposes when CWReader
- is installed.
-
-
- OPTIONS CONFIGURABLE WITH CWRCONF
-
- The global options (saved in USERCFG.CWR)
-
- Monitor type (default COLOR)
-
- This can be toggled between COLOR and MONO. If MONO is
- selected, the screen-buffer is assumed to be elsewhere and
- the cursor-position is read differently. Set this to COLOR
- even when you are using a color-monitor in a mono-mode!
-
- Your callsign (default OH3LIM)
-
- Enter your callsign here (the maximum length is 15
- characters). This is used to check whether your callsign is
- received after a "TU". If you do not use this feature, it
- doesn't matter what you enter here.
-
- Keyer connection (default LPT1, ACK-pin (0=ON)
-
- This options allows you to set the port, pin and polarity to
- specify where your keyer is connected. If there is no keyer
- connected, select NONE for the port.
-
- Ext. disable conn. (default NOT CONNECTED)
-
- See above.
-
- The initialization key (default Alt-I)
-
- This specifies the initialization key, which is pressed to
- initialize CWReader after loading a log-program. The
- initialization key is also used to uninitialize CWReader.
-
- The disable key (default Alt-D)
-
- This specifies the key used to disable CWReader. When it is
- pressed, nothing is copied from the keyer until it is pressed
- another time. Then copying is continued and all internal
- variables (speed expectations, for example) are reset.
-
- The exchange to send after receiving 599 (default #)
-
- This is the exchange that is programmed in the F2-key. This
- exchange is played after 599 has been received from the keyer
- and when you press the insert-key. With CT, enter "#" here if
- you want a serial number to be sent. The maximum length of
- the exchange is 8 characters.
-
- The time to wait after receiving 599 (default 16 dits)
-
- This specifies the delay (in dits of current CW-speed) after
- receiving 599 during which nothing is copied from the keyer.
- During this time you can manually send an exchange with the
- keyer, for example.
-
- "599"-detection (default ON)
-
- Specifies whether the 599-detection logic is ON or OFF.
-
- "TU"-detection (default ON)
-
- Specifies whether the TU-detection logic is ON or OFF.
-
- "TU <call>"-detection (default ON)
-
- Specifies whether the "TU followed by your call"-detection
- logic is ON or OFF.
-
- "CQ TEST"-detection (default ON, TEST ... TEST)
-
- Specifies whether the CQ-detection logic is ON or OFF and if
- ON, what kind of a CQ-message do you use. The CQ-message is
- specified in terms of start ("TEST", "CQ TEST" or "CQ <space>
- TEST, if copying spaces is enable) and end ("TEST", "K" or
- "<space> K"). Note, that if your callsign contains a K, you
- will only be able to end your CQ with "TEST"! Also, it's not
- possible for CWReader to understand a CQ like "CQ TEST DE
- OH3LIM OH3LIM".
-
- Interpret "X" as "TU" (default YES)
-
- Specifies whether TU can be sent as an X. This can be set to
- NO if you send the "TU" from your keyer's memory (or use log-
- program to send TU's).
-
- Interpret "HNN" as "599" (default YES)
-
- Specifies whether 5NN can be accidentally sent as HNN and
- still be understood by CWReader. This can be set to NO if you
- send the 599 from your keyer's memory.
-
- Action on 'bunch-of-dits' type of error (default Clear call)
-
- This defines the action to take when receiving a 'bunch-of-
- dits' type of error-character. If set to None, the error is
- simply ignored. If set to Clear call, the log-line is wiped
- out (by an elsewhere configured keystroke, by default Alt-
- F8). If set to Reset variables, some internal variables are
- reset, namely ones affecting 1) how far we are in receiving
- 599, 2) how many characters are already copied, 3) speed
- expectations and 4) is a CQ-message in progress.
-
- Action on '...-.' type of error (default Clear call)
-
- See above.
-
- Action on 'three-slow-dits' type of error (default Clear call)
-
- See above.
-
- Initialization delay (default 980)
-
- The initialization process of CWReader sets the contents of
- some CW-memories (F2, F6 and F7, specifically). On a floppy-
- disk equipped computer this may take quite a while and
- because the next initialization step may not begin before the
- first one is completed, you may need to increase this delay
- in order to get CWReader initialize itself properly.
-
- With CT, at the initialization, you should see the "Set Fx-
- message"-windows on the screen. If (especially the first)
- doesn't appear, it's likely that this delay is set too low.
- After initialization, you can check the messages of F2, F6
- and F7. They should contain "<exchange specified by you>",
- "TU 5NN" and "5NN", respectively. If they do not, try
- increasing this value.
-
- The values are specified in milliseconds, but they are
- automatically rounded to the nearest 18.2's part of a second.
-
- Default CW-speed (28 wpm)
-
- This sets the default CW-speed which is put in effect every
- time CWReader is initialized.
-
- <THE CW-CHARACTER SETTINGS>
-
- This selection brings up a new screen, in which you can set
- how every possible CW-character is copied. All common
- characters shorter than seven elements are displayed as such
- and other characters can be set up as user-defined CW-
- characters, which can be at most 15 elements long.
-
- Press ENTER on normal CW-characters to change them and use
- INSERT/DELETE to add/delete user defined CW-characters. When
- asked to hit the key to assign, you can use Ctrl-C to cancel
- the assignment, Ctrl-X to specify NONE and Ctrl-Z to make a
- key-sequence. If you want the character ".-", for example, to
- expand just to an 'A', you would simply press the 'A'. But if
- you wanted it to expand to "ABCDE", you would hit Ctrl-Z, the
- sequence ('A', 'B', 'C', 'D', 'E') and then end it by hitting
- Ctrl-X.
-
- You exit the CW-character settings -screen by pressing F10 to
- accept or ESC to cancel all changes you have made.
-
-
-
- Contest-program specific options
-
- After selecting this choice from the main-menu, you are given a
- list of all contest-programs CWRCONF knows (for which it found a
- .CWR-file). You can continue by selecting one of them or by
- selecting <NEW CONTEST-PROGRAM> which lets you add options for a
- new contest-program. The options are initially set as for CT.
-
- After this you are presented with the following options to change:
-
- Program name
-
- Specify the contest-program's name here. It's used in the
- previous menu to let you know which options are configured
- for which contest-program.
-
- CW-speed display (default 70,9 ; 113 ; WPM)
-
- Selecting this allows you to specify how CWReader will
- display the CW-speed on the screen. Usually you want the
- speed to be displayed in the same position as it is display
- by the contest-program.
-
- First you specify the X-coordinate (0-79) of the speed-field,
- then the Y-coordinate (0-24). Enter 255 as X-coordinate to
- specify NO DISPLAY. After the coordinates you are asked the
- foreground and the background color. You may have to
- experiment with these to find the right ones for your
- particular contest-program. The last item you choose is
- whether the speed is display in WPM (words per minute) or in
- CPM (characters per minute).
-
- X-coordinate of the call-field (default 15)
-
- This specifies the X-coordinate of the callsign-field in your
- contest-program. It's used when you send a callsign of which
- you have already typed a part in the call-field. If you don't
- need this feature, enter 255 here.
-
- Keys used to change CW-speed (default Alt-F9, Alt-F10)
-
- This specifies the keys you want to use to change the CW-
- speed. Usually they should be set to be the same as in the
- contest-program you use, but this is not constraint. First
- you are asked for the speed-down -key, then the speed-up -
- key.
-
- Key, which shall be discarded (default Alt-V)
-
- As explained earlier, your contest-program's speed must
- always be set to 22 wpm. If it's changed, CWReader will
- probably begin working errorneously. Therefore, it's
- important, that the speed is not changed accidentally, and
- with this option you can set one key to be totally discarded
- to prevent that from happening. In CT, Alt-V is a way to
- change speed in a way which CWReader can't duplicate; that's
- why Alt-V is a good candidate for being discarded.
-
- Clear-key (default Alt-F8)
-
- This sets the key, which is used to clear the call-field.
- It's used when an error-character is sent, and it's action is
- set to Clear call. You might also use the backspace-key here.
-
- Key used to advance to next field after 599 (default Space)
-
- After receiving 599, CWReader should move the cursor to the
- next field (namely the exchange-field) and this option
- specifies the key with which it's done.
-
- Key to send after receiving 599 (default F2)
-
- After receiving 599, CWReader can command the contest-program
- to send your exchange (HIGHLY recommended when the exchange
- is a serial number). This option specifies the key with which
- this is done. Enter Ctrl-X to send nothing after 599.
-
- Confirmation key; when to reset variables (default '+')
-
- This specifies the key with which you confirm a QSO in your
- contest-program. When it's hit, most of CWReader's internal
- variables are reset, so that it's ready for a new QSO.
-
- Key, upon which to uninstall (default Alt-X)
-
- Normally, you uninstall CWReader by pressing the
- initialization-key once more. However, if you forget to do
- this before exiting your contest-program, your system will
- hang. But if you set this option to the be the key, with
- which you exit from the contest-program, CWReader will be
- automatically uninstalled when you are exiting your contest-
- program.
-
- Test that a contest-program is loaded (default YES)
-
- If you set this to YES, you are not allowed to initialize
- CWReader if you have not loaded a contest-program first.
- Usually this may be set to YES, but if you want to enter DOS-
- commands with your keyer, this must be set to NO.
-
- Copy spaces (default NO)
-
- This specifies whether you spaces to be copied or not. In a
- normal contest-type operation there is no point in copying
- the spaces, but when, for example, you are entering DOS-
- commands with your keyer, copying spaces is mandatory. When
- set to YES, you are asked for space's length in dits (the
- delay after which the space is considered a space) and key,
- as which the space is entered (almost always as Space).
-
- Trapped key #1-4 (defaults F2: F7, F2 ; Insert: F5, F6, F2 ;
- NONE ; NONE)
-
- You can define four trapped keys, which means keys, that are
- translated for the contest-program as something else. You
- could, for example, make the key 'A' trapped and specify its
- sequence as "ABCDE". Then, whenever you press 'A', what would
- appear on the screen would be "ABCDE". The trapped keys can
- be thought of as simple macros.
-
- Init sequence #1-4 (defaults Alt-V, '2', '2', Enter, Shift-
- F2, BkSp * 8 ;
- <AFTER599>, Enter, Shift-F6, BkSp * 8 ;
- '5', 'N', 'N', Enter, Shift-F7, BkSp * 8 ;
- 'T', 'U', Space, '5', 'N', 'N', Enter)
-
- These four sequences are sent to the contest-program when
- CWReader is initialized. Their purpose is to set the
- program's CW-speed to 22 WPM and set CW-memories accordingly.
- Between each of the sequences, there is a delay of the length
- specified in Global options / Initialization delay.
-
- Entering the sequence is just like entering any other key-
- sequence, except that there is an extra-option, Ctrl-Z.
- Pressing Ctrl-Z inserts <AFTER599> in the sequence, which
- means that the exchange specified in Global options / The
- exchange to send after 599 is inserted in place of
- <AFTER599>. The maximum length of each init-sequence is 15
- with <AFTER599> calculated as set in Global options.
-
- <CONTEST PROGRAM SPECIFIC 'GLOBAL OPTIONS'>
-
- Selecting this options brings up a screen which is just like
- the global options -screen. By default all the options are
- set to "DEFAULT", which means that their values are taken
- from the actual global options.
-
- However, you can change any of the options and it will take
- precedence over the corresponding actual global option.
- Pressing space returns the options back to DEFAULT.
-
-
-
-
-
- TIPS FOR CWREADER USERS
-
- This section provides some miscellaneous information/tips about the
- operation of CWReader. It's recommended reading for somebody who
- has learned to use CWReader but is still a little uncomfortable
- with it.
-
- Character spacings
-
- You must be very careful not to send the characters too
- close-spaced. For example, in "/P" the space between / and P
- is often omited and the call is still well understood, but
- CWReader can't say whether -..-..--. is intended to be "/P",
- "DDG" or perhaps "NETIME" (hi). These too long 'characters'
- are simply skipped by CWReader.
-
- The dits are said to be one unit long and the dahs are three
- such units. Character spaces should also be a MINIMUM of
- three units! Often, when sending callsigns 'in a hurry' (that
- is: in a contest), the spaces just get shortened to two
- units; there is no problem when receiving such characters by
- ear. But CWReader may have problems reading such CW and it
- sure is annoying when you send a call correctly but then
- notice it appearing wrong on the screen. (and even more
- annoying if you don't!)
-
- Some keyers have (at least my CMOS Super Keyer II has) a
- feature called "auto-spacing", which helps to prevent this
- kind of errors from happening. It automatically extends any
- space longer than two units to at least three units. It's
- really a good idea to set your keyer's auto-spacing on, if it
- has this feature! The effect is hardly noticed by the
- operator when sending with higher speeds (>25 wpm).
-
- An idea of using the external-disable feature
-
- You may have wondered what you could use the external-disable
- feature for. Well, one use is to connect a simple switch to
- it to make it possible to disable CWReader otherway than
- using the Alt-D. For some users flipping a switch is easier
- than pushing two keys on the keyboard.
-
-
-
-
-
-
- THE DISTRIBUTION POLICY AND REGISTERATION
-
- CWReader is distributed as a shareware-program. You are encouraged
- to copy it to your friends, upload it to Bulletin Board Systems
- (BBS's, possibly ones that are specialized to HAM-software) and to
- spread it all over the globe by any means.
-
- You may try CWReader completely free for some time. You may try it
- in a contest, on a DX-pedition or just play with it, giving
- commands like "DIR/P" with your paddle.
-
- After you have been using CWReader for some time and have got used
- to it and possible even couldn't manage further without it, you
- should register your copy. You are NOT asked here to register
- "after four weeks from the date when you first received CWReader".
- You may decide yourself when you have evaluated CWReader for a long
- enough time and when to register. You know, there are no major
- contests every weekend and contests are really good opportunities
- to test CWReader.
-
- All in all, if you continue using CWReader, you should register.
- But if you just try it in a few contests, play with it around a
- little and then think "nice program, but I don't need it", you
- don't have to register.
-
-
-
- Registering CWReader
-
- When the time has come to register your copy of CWReader (see the
- above paragraph), you should send a letter, along with $8, to the
- following address:
-
- Mikko Noromaa OH3LIM
- Kanavamäki 13 E 23
- 00840 Helsinki
- FINLAND
-
- Include in the letter your name, callsign (if applicable) and
- postal address. Also all comments, bug-reports and enhancement-
- ideas are welcome. If you want to get the newest version of
- CWReader from me in return-mail, include a 5¼ or 3½ diskette or
- additional $2 of money. If there is no new version available, your
- diskette (or $2) is put on hold and when the next release comes
- available, it'll be sent to you.
-
- If you think that $8 is too little to pay for such a brilliant
- program as CWReader is, your increased contribution is more than
- welcome! And if you can't afford $10, less will do as well. Anyway,
- a registeration along with only a few dollars is MUCH better than
- no registeration at all!
-
-
-
- When you register, you'll get the following benefits:
- - A complete and working CWReader-program (well, that's what
- your current version is - the shareware-version is not
- crippled in any way)
- - The next version will be sent to you when it becomes
- available (if a diskette or $2 sent)
- - When there is a very major new release of CWReader or a very
- significant bug-fix, all registered users will get the new
- version, be a diskette sent or not
- - Support for CWReader. All questions of registered users will
- be answered (preferable sent by normal mail or electronic
- mail) and probably those of unregistered users too!
-
-
- That's not too many benefits - but if I would have offered to send
- a registered version with your name on it after receiving your
- registeration, send regular updates to all users and so on, I would
- have had to at least double the price! I think it's best for all to
- have this system with a low price and little benefits.
-
-
-
- If you have anything to ask me about CWReader, write to the address
- given above. You may also send mail to my internet-address:
- Mikko.Noromaa@hut.fi
-
- Hope to see you in contests and pileups! And hope you'll enjoy
- CWReader and register it soon!
-
- 73 de Mikko Noromaa OH3LIM